home *** CD-ROM | disk | FTP | other *** search
- ;void clear_page(page_number,color);
- ; unsigned char page_number,color;
-
- EXTRN _memory_model:byte
-
- _TEXT SEGMENT BYTE PUBLIC 'CODE'
- ASSUME CS:_TEXT
- PUBLIC _clear_page
- _clear_page proc near
- push bp ;save BP
- mov bp,sp ;set stack frame
- cmp _memory_model,0 ;near or far?
- jle begin ;jump if near
- inc bp ;else add 2 to BP
- inc bp ;
- begin: mov bh,[bp+4] ;page number to BH
- mov ah,2 ;BIOS func to set cursor
- sub dx,dx ;row and column are 0,0
- int 10h ;set the cursor
- mov ah,9 ;BIOS write function
- mov al,32 ;clear with space char
- mov bl,[bp+6] ;attribute to BL
- mov cx,2000 ;chars to write
- int 10h ;clear the page
- pop bp ;restore BP
- cmp _memory_model,0 ;quit
- jle quit ;
- db 0CBh ;RET far
- quit: ret ;RET near
- _clear_page endp
- _TEXT ENDS
- END